23

» WarCraft 3 / Боевая единица

Похожие вопросы:

ответ
Значит перемудрил с параметром "Разрешённые цели", сбрось по умолчанию и перенастрой правильно
ответ
Melissa:
юнит получает урон
damage taken >= здоровье triggering unit
б.е. - set life to (1 + damage taken)
Юнит получает урон и умирает ещё до того как ты даёшь хп триггерно.
ответ
Как как, я уже выкладывал наработку...
Суть в баге некоторых морфов, после чего боевая единица выполняет первый отданный приказ до талого, никакие действия игрока на это не повлияют но панель приказов не скрывается, кнопки нажимаются но ничего не происходит.
ответ
отлов урона делается через событие юнит получил урон
всё остальное описано в статье
от тебя только мозг понадобится и хотя бы 1 рука
атачить можно через хэш/юзердату/хэндл
ответ
отлавливаем приказ на начало строительства юнита и если условие не выполняется отдаём приказ на отмену
коды приказов ты узнаешь сам либо выводя все приказы на экран либо покопавшись в либах джнгп

23

» WarCraft 3 / Как сделать юнита невыделяемым,но уязвимым

Похожие вопросы:

ответ
Сделай проверку на приказы. если допустим ты его заставляешь бежать куда то отменяешь приказ и делаешь ему другой приказ стоять или бежать) или что он там у тебя делает

23

» WarCraft 3 / Как сделать выделяемую модель?

Похожие вопросы:

ответ
Ааа, ну тогда смотри
не_кликабельность Сларка делается так
а - его морфят в юнит без модельки
б - ему дают москитов и отбирают (что бы на него нельзя было кликнуть, но можно было выделить)
в - все события "атакован" приводятся к действию "стоп", если это Сларк
г - аура регена игнорирует то что Сларка видят
у тебя на пути стоит пункт Б, т.к. что бы умные люди не заменяли себе пустую модельку (пункт А) на нормальную и не могли на неё в итоге тыкать... Так что в итоге - ты можешь её заменить, но тыкнуть всё равно не сможешь... шах и мат

23

» WarCraft 3 / способность

Похожие вопросы:

ответ
Когда юнит проучивает пассивку, добавляй в группу юнита, который выучил пассивку. Дальше все просто -
Юнит умирает
Киллинг юнит в нашей группе - да
Дайинг юнит не в команде владельца киллинг юнит.
Игрок - адд проперти - 500 золото (овнер оф киллинг юнит)
ответ
Steal nerves:
  1. Выделяешь всех юнитов в определенной области в группу. Так есть определенный радиус действия (круг выбора области заклинанием типа у бурана, огненного столба и др.), в редакторе называется "Область воздействия", вокруг центра каста перебираешь всех юнитов
  2. Создаешь dummi и кастуешь над каждым юнитом в группе способность "гнев деревьев". Или пробуешь полностью триггерно создать эффект обхвата юнитов (эти лозы и корни деревьев), паузишь и периодически таймером наносишь урон до определенного времени (под конец удаляешь эффект, а если кто-то умер, то также удаляешь эффект). Только, когда триггерно делаешь, баффы нацепить не сможешь, придеться также делать. Заморочек со вторым способом больше
Способность пустышку можно создать на основе канала.
ответ
2 уровня у первого уровня всё в 0, у второго как обычно.
При замахе на конретного игрока изменяй уровень критов.
ответ
запускать свой таймер после использования каждой способности или устанавливать целочисленную на каждую способность с ее временем перезарядки и так же проверять каждую секунду ее значение.
ответ
Цепь молний, с отрец уроном.

23

» WarCraft 3 / Выбор юнита

Принятый ответ
Похожие вопросы:

ответ
Попробуй через действие "Выбор - Выбрать группу юнитов для игрока".
ответ
Прикрепляю.
ответ
ответ
ответ
Starman2222, нельзя забиндить. Объясни внятно что требуется, может найдется альтернатива.
ответ
darkowlom, нужен 1 массив и 1 функция
примерно так будет выглядеть
int types[];

bool myBoolExp(){
	return GetUnitTypeId(GetFilterUnit())==types[GetPlayerId(GetOwningPlayer(GetFilterUnit()))];
}

...
types[GetPlayerId(myPlayer)]=myType;
GroupEnumUnitsOfPlayer(myGroup, myPlayer, function myBoolExp);
либо перебирать группу вручную
unit Picked
group myGroup
...
GroupEnumUnitsOfPlayer(myGroup, myPlayer, null);
loop{
	Picked = FirstOfGroup(myGroup)
exitwhen Picked == null
	GroupRemoveUnit(myGroup,Picked)
}
в данной ситуации лучше использовать первый вариант